package com.shao.loadBalance;

import java.net.InetSocketAddress;
import java.util.List;

/**
 * @author PaoFu
 * @version 1.0
 * @data 2025/5/6 14:45
 */
public interface LoadBalancer {

    /**
     * 根据服务名查找服务
     * @param serviceName 服务名
     * @return 服务
     */
    InetSocketAddress selectServiceAddress(String serviceName);

    /**
     * 感知服务上下线重新负载均衡
     * @param serviceName 服务名
     * @param addresses 新的地址列表
     */
    void reLoadBalancer(String serviceName, List<InetSocketAddress> addresses);
}
